/**************************************************************
 *
 * Copyright (c) 2008, ******, All Rights Reserved.
 *
 * 名 称:
 *		db.h
 * 位 置:
 *		inc/pub/db.h
 * 描 述:
 *		公用数据库类
 * 备 注:
 *		无
 * 修 改:
 *		2008-09-20  Simon   - 创建
 *
 **************************************************************/

#ifndef __PUB_DB_H__
#define __PUB_DB_H__

#include <string>
#include <occi.h>

using namespace std;
using namespace oracle::occi;

class ConnectionPoolWrapper
{
private:
	Environment* _env;
	ConnectionPool* _pool;

private:
	//构造函数
	ConnectionPoolWrapper();

protected:
	//析构函数
	~ConnectionPoolWrapper();

public:
	//获取连接池Wrapper单例
	static ConnectionPoolWrapper* getInstance();

	//释放连接池Wrapper单例
	static void freeInstance();

public:
	//获取数据库连接
	Connection* createConnection();

	//释放数据库联接
	void terminateConnection(Connection* conn);

private:
	static ConnectionPoolWrapper* _instance;

};

#endif
